package jdbc;

import com.mysql.jdbc.jdbc2.optional.MysqlDataSource;

import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;

/**
 * Created with IntelliJ IDEA
 * Description:
 * User: YKH
 * Date: 2022-05-18
 * Time: 16:53
 * author:DeleteJdbc
 */
public class DeleteJdbc {
    public  boolean delete(String name) throws SQLException {
        //1. 创建DataSource 对象
        DataSource dataSource = new MysqlDataSource();
        // 设置数据库所在的地址  向下转型
        ((MysqlDataSource) dataSource).setURL("jdbc:mysql://localhost:3306/libarysystem?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8");
        // 设置登录数据库的用户名
        ((MysqlDataSource) dataSource).setUser("root");
        // 设置登录数据库的密码
        ((MysqlDataSource) dataSource).setPassword("123456");

        //2.让代码和数据库建立连接
        //选择java.sql 的Connextion
        Connection connection = dataSource.getConnection();


         //构造一个SQL
        String sql = "delete  from booklist  where name = ?";//内容待定
        //此处光是一个String 类型的sql还不行,要把这个String 包装成一个"语句对象"
        PreparedStatement statement = connection.prepareStatement(sql);
        //替换 sql 中 ? 的内容
        statement.setString(1, name);


        System.out.println(statement);

        //4.执行SQL
        int ret = statement.executeUpdate();
        System.out.println(ret);

        //5. 此时 SQL 执行完毕, 然后还需要释放资源
        //先释放 statement  后释放  connection , 先创建的, 后释放
        statement.close();
        connection.close();

        if (ret !=0){
            return true;
        }
        else {
            return false;
        }
    }
}
